package levels
{
	import org.flixel.*;
	import utilities.Wave;
	import states.GameState;
	import enemies.*;
	import interactions.*;
	import items.*;
	import treasures.*;
	
	
	/**
	 * ...
	 * @author JAC
	 */
	public class Level_14 extends GameState
	{
		override public function create():void
		{
			super.create();
			
			_maze.load(MazeData.long_tunnel);
			
			Player.spawnAt(14, 1);
			
			Tracker.lives = 3;
			Tracker.mapScore = 1000;
			Tracker.minScore = 4;
			
			addEntity(new Slow(13, 1));
			addEntity(new SpeedBooster(15, 1));
			
			addEntity(new RockThrow(9, 17));
			addEntity(new RockThrow(19, 17));
			
			addEntity(new Trapdoor(21, 9));
			addEntity(new Trapdoor(7, 9));
		
			addEntity(new LootBag(9, 7));
			addEntity(new LootBag(19, 7));
			
			addEntity(new LootBag(3, 11));
			addEntity(new LootBag(5, 11));
			addEntity(new LootBag(7, 11));
			addEntity(new LootBag(9, 11));
			
			addEntity(new LootBag(25, 11));
			addEntity(new LootBag(23, 11));
			addEntity(new LootBag(21, 11));
			addEntity(new LootBag(19, 11));
						
			var wave:Wave = new Wave();
			wave.addEntity(new Robber(5, 20));
			wave.addEntity(new Robber(21, 20));
			wave.addEntity(new Robber(7, 20));
			wave.addEntity(new Robber(23, 20));
			
			addWave(wave);
			wave = new Wave();
			
			wave.addEntity(new Robber(5, 20));
			wave.addEntity(new Robber(23, 20));
			wave.addEntity(new Exorcist(0, 9));
			wave.addEntity(new Exorcist(28, 9));
			addWave(wave);
			
			wave = new Wave();
			wave.addEntity(new Slow(13, 1));
			wave.addEntity(new SpeedBooster(15, 1));
			wave.addEntity(new RockThrow(14, 1));
			wave.addEntity(new RockThrow(14, 10))
			wave.addEntity(new RockThrow(14, 15))
			
			wave.addEntity(new Robber(11, 0));
			wave.addEntity(new Robber(17, 0));
			wave.addEntity(new Exorcist(0, 9));
			wave.addEntity(new Exorcist(28, 9));
			wave.addEntity(new Brute(0, 5));
			wave.addEntity(new Brute(28, 5));
			addWave(wave);
			
			Tracker.maxWave = 3;
			
			gameStart();
		}
	}
}